package com.semac.server.database.fetchers;

import java.sql.ResultSet;
import java.sql.SQLException;

import com.semac.server.database.classesbase.AbstractDataFetcher;
import com.semac.shared.model.Pessoa;

public class InscricoesAlunoSemanacAtiva extends AbstractDataFetcher<Integer> {

	public InscricoesAlunoSemanacAtiva(Pessoa pessoa) {
		super("\"inscricoes\".\"pessoaId\" = " + pessoa.getIdPessoa());
	}

	@Override
	public void fetchDataFromResultSet(ResultSet resultSet) throws SQLException {
		while (resultSet.next())
			this.results.add(resultSet.getInt("codAtividade"));
	}

	@Override
	protected String getColumnsToBeSelected() {
		return "\"atividadesativas\".\"codAtividade\"";
	}

	@Override
	protected String getTableToBeSelected() {
		return " ((select \"pessoa\".\"codPessoa\" as \"pessoaId\" from \"pessoa\") as \"pessoas\" " +
				"inner join \"inscricao\" on \"pessoas\".\"pessoaId\" = \"inscricao\".\"codPessoa\") as " +
				"\"inscricoes\" inner join \"atividadesativas\" on \"atividadesativas\".\"codAtividade\" = " +
				"\"inscricoes\".\"codAtividade\" ";
	}

}
